<html>
<head><meta charset="utf-8"><title>miri performance · t-compiler/wg-mir-opt · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/index.html">t-compiler/wg-mir-opt</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html">miri performance</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="176243989"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176243989" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176243989">(Sep 21 2019 at 01:57)</a>:</h4>
<p>Now that  I'm getting close to publishing my REPL project (based on miri of course), I'm wondering what we can do to speed up its performance if we only care about execution  and not using miri as a validator / bug-finder. I'm thinking:<br>
a) <code>-Zmir-opt-level=3</code> (this  is default, so just remove the <code>=0</code> from the args that miri sets?)<br>
b) remove assertions in lots of places<br>
c) other things?</p>



<a name="176262466"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176262466" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176262466">(Sep 21 2019 at 12:15)</a>:</h4>
<p>removing asserts and similar things only makes sense after benchmarking</p>



<a name="176262472"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176262472" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176262472">(Sep 21 2019 at 12:15)</a>:</h4>
<p>but in general, you won't be able to do much, miri just does a lot of work</p>



<a name="176262489"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176262489" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176262489">(Sep 21 2019 at 12:16)</a>:</h4>
<p>you can disable validation for the repl</p>



<a name="176262514"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176262514" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176262514">(Sep 21 2019 at 12:16)</a>:</h4>
<p>that will give you a 2x boost</p>



<a name="176267116"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176267116" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176267116">(Sep 21 2019 at 14:30)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> okay, fair enough. will have a look, thanks</p>



<a name="176272511"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176272511" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176272511">(Sep 21 2019 at 17:03)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> BTW, I'm right in saying that mir-opt-level=0 means no optimisation?</p>



<a name="176272516"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176272516" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176272516">(Sep 21 2019 at 17:04)</a>:</h4>
<p>i.e., point a abovee</p>



<a name="176305586"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176305586" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176305586">(Sep 22 2019 at 10:57)</a>:</h4>
<p>a 2x boost probably still means something like 500x slower than a release build</p>



<a name="176322643"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176322643" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176322643">(Sep 22 2019 at 19:11)</a>:</h4>
<p>yeah, though if we can work towards a 100x slowdown, that would be decent I think (if you have any ideas, let me know)</p>



<a name="176322684"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176322684" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176322684">(Sep 22 2019 at 19:12)</a>:</h4>
<p>eventually, would be nice to do what the ghci does and run extern crates as native code.</p>



<a name="176322688"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176322688" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176322688">(Sep 22 2019 at 19:12)</a>:</h4>
<p><span class="user-mention" data-user-id="132920">@gnzlbg</span></p>



<a name="176323319"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176323319" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176323319">(Sep 22 2019 at 19:32)</a>:</h4>
<p>not really, what would have a big impact is moving towards jitting the code that's used in the repl</p>



<a name="176323330"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176323330" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176323330">(Sep 22 2019 at 19:32)</a>:</h4>
<p>but the hardware your repl runs on is actually miri</p>



<a name="176333934"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176333934" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176333934">(Sep 23 2019 at 01:32)</a>:</h4>
<p><span class="user-mention" data-user-id="132920">@gnzlbg</span> I don't get how you could JIT it, given it's interpreted...</p>



<a name="176333938"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176333938" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176333938">(Sep 23 2019 at 01:33)</a>:</h4>
<p>unless I misunderstand you entirely...</p>



<a name="176342354"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176342354" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176342354">(Sep 23 2019 at 05:59)</a>:</h4>
<p>no you didn't, because the repl is based on miri, you are limited to the interpreter</p>



<a name="176342431"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176342431" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176342431">(Sep 23 2019 at 06:01)</a>:</h4>
<p>you'd need to bypass the interpreter to make it faster</p>



<a name="176342559"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176342559" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176342559">(Sep 23 2019 at 06:04)</a>:</h4>
<p>If the only thing the user is allowed to enter in the REPL is <code>const fn</code>s, one could try to treat them all as intrinsics</p>



<a name="176342575"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176342575" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176342575">(Sep 23 2019 at 06:05)</a>:</h4>
<p>compiling them to machine code, running them, and then passing their result to the interpreter</p>



<a name="176342583"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176342583" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176342583">(Sep 23 2019 at 06:05)</a>:</h4>
<p>for anything more complicated I don't see how it could work</p>



<a name="176412794"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176412794" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176412794">(Sep 23 2019 at 21:48)</a>:</h4>
<p>hmm yeah</p>



<a name="176412804"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176412804" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176412804">(Sep 23 2019 at 21:48)</a>:</h4>
<p>seems no point even using miri if we go that route though</p>



<a name="176412807"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176412807" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176412807">(Sep 23 2019 at 21:48)</a>:</h4>
<p>this should suffice for now</p>



<a name="176849019"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176849019" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176849019">(Sep 29 2019 at 01:01)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> Okay, I went through the cosmetic changes and did my best to only keep the ones that were nearby to the functionality changes. Hopefully that conforms to the policy better now, and doesn't bother you. Please note that I'm mainly just bad at judging these things (I look at the matter through a very different lens to you), and time may have led me to slip back more into old habits — I am not intentionally trying to piss people off, but you're entitled to your own judgement anyway... Well, I'm going to presume this matter is now basically resolved, and collapse both of our comments simply to avoid noise and people seeing contention which is really only distracting from the actual PR at this point. That said, if you'd like to highlight in brief anything I missed, feel free to point that out to me there or here. Thanks.</p>



<a name="176906857"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176906857" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176906857">(Sep 30 2019 at 06:35)</a>:</h4>
<p>Thanks, looks great now. I just tried to do a normal review, though the github interface just ignores me adding comments to that PR. I'll leave a review here then I guess</p>



<a name="176906907"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176906907" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176906907">(Sep 30 2019 at 06:36)</a>:</h4>
<p>You added an <code>interp_tag</code> field to ast and hir <code>Local</code>, is anything speaking against just making it a regular <code>rustc</code> attribute?</p>



<a name="176906997"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176906997" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176906997">(Sep 30 2019 at 06:38)</a>:</h4>
<p>wrt <code>interp_user_fn</code>, why does this need to be part of the compiler-API? I mean only the query, adding the attribute is obviously fine. Couldn't you just run the query code in your interpreter without having to add any additional logic to rustc?</p>



<a name="176907027"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176907027" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176907027">(Sep 30 2019 at 06:39)</a>:</h4>
<p>the <code>interp_mode</code> compiler flag seems to be entirely unused, what do you use it for?</p>



<a name="176907594"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176907594" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176907594">(Sep 30 2019 at 06:52)</a>:</h4>
<p>the doc comment change on <code>stderr</code> is odd, you're mentioning <code>true</code>, but it's not a boolean</p>



<a name="176907918"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176907918" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176907918">(Sep 30 2019 at 07:00)</a>:</h4>
<p>Can you explain the <code>interp_user_fn</code> parsing scheme that you implemented? I'm not sure how the repl is going to use it</p>



<a name="176941561"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176941561" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176941561">(Sep 30 2019 at 15:13)</a>:</h4>
<p>Weird. Anyway, review here is fine.</p>



<a name="176941904"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176941904" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176941904">(Sep 30 2019 at 15:16)</a>:</h4>
<blockquote>
<p>You added an <code>interp_tag</code> field to ast and hir <code>Local</code>, is anything speaking against just making it a regular <code>rustc</code> attribute?</p>
</blockquote>
<p>Mainly convenience. Also, semantically it felt more  correct to have it as an inherent property of the <code>Local</code>, since diagnostics for borrowck make use of it. (You can see this in my personal branch for all the changes, though I admit it's a huge commit.)</p>



<a name="176941965"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176941965" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176941965">(Sep 30 2019 at 15:17)</a>:</h4>
<p>Hmm</p>



<a name="176941999"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176941999" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176941999">(Sep 30 2019 at 15:17)</a>:</h4>
<p>In that case I think it would really be best to use an attribute</p>



<a name="176942015"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942015" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942015">(Sep 30 2019 at 15:17)</a>:</h4>
<p>you can create a convenience wrapper out of tree for extracting your properties from attributes so you don't have much usability regression (calling a function instead of accessing a field)</p>



<a name="176942123"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942123" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942123">(Sep 30 2019 at 15:18)</a>:</h4>
<blockquote>
<p>wrt <code>interp_user_fn</code>, why does this need to be part of the compiler-API? I mean only the query, adding the attribute is obviously fine. Couldn't you just run the query code in your interpreter without having to add any additional logic to rustc?</p>
</blockquote>
<p>it could be except that ty pretty-printing makes use of it in two places (in a PR to come) to change the way tys are pretty-printed in diagnostics and generally</p>



<a name="176942147"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942147" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942147">(Sep 30 2019 at 15:18)</a>:</h4>
<blockquote>
<p>the doc comment change on <code>stderr</code> is odd, you're mentioning <code>true</code>, but it's not a boolean</p>
</blockquote>
<p>I'll have a look. Could be a mistake on my part.</p>



<a name="176942309"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942309" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942309">(Sep 30 2019 at 15:20)</a>:</h4>
<blockquote>
<p>Can you explain the <code>interp_user_fn</code> parsing scheme that you implemented? I'm not sure how the repl is going to use it</p>
</blockquote>
<p>Basically, I do this in the REPL:</p>
<div class="codehilite"><pre><span></span><span class="w">    </span><span class="n">compiler</span><span class="p">.</span><span class="n">set_interp_user_fn</span><span class="p">(</span><span class="nb">Some</span><span class="p">(</span><span class="n">InterpUserFn</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">        </span><span class="n">placeholder</span>: <span class="s">&quot;user_body_placeholder&quot;</span><span class="p">.</span><span class="n">to_owned</span><span class="p">(),</span><span class="w"></span>
<span class="w">        </span><span class="n">body</span>: <span class="nc">Steal</span>::<span class="n">new</span><span class="p">(</span><span class="n">user_body</span><span class="p">),</span><span class="w"> </span><span class="c1">// user_body is independently-parsed `P&lt;Block&gt;`</span>
<span class="w">    </span><span class="p">}));</span><span class="w"></span>
</pre></div>



<a name="176942360"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942360" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942360">(Sep 30 2019 at 15:21)</a>:</h4>
<p>hmm</p>



<a name="176942388"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942388" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942388">(Sep 30 2019 at 15:21)</a>:</h4>
<p>if we had a querified parser you could just override the body parsing query <span aria-label="frown" class="emoji emoji-1f641" role="img" title="frown">:frown:</span> but we don't</p>



<a name="176942391"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942391" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942391">(Sep 30 2019 at 15:22)</a>:</h4>
<p>yeah...</p>



<a name="176942454"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942454" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942454">(Sep 30 2019 at 15:22)</a>:</h4>
<p>I tried a lot of different approaches here</p>



<a name="176942468"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942468" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942468">(Sep 30 2019 at 15:22)</a>:</h4>
<p>this was the least painful one I ended up with</p>



<a name="176942478"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942478" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942478">(Sep 30 2019 at 15:22)</a>:</h4>
<p>and not too intrusive to the compiler codebase</p>



<a name="176942489"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942489" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942489">(Sep 30 2019 at 15:22)</a>:</h4>
<p><em>shrug</em></p>



<a name="176942494"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942494" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942494">(Sep 30 2019 at 15:22)</a>:</h4>
<p>could you create a proc macro instead?</p>



<a name="176942509"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942509" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942509">(Sep 30 2019 at 15:22)</a>:</h4>
<p>heh I thought about that</p>



<a name="176942563"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942563" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942563">(Sep 30 2019 at 15:23)</a>:</h4>
<p>I wasn't sure how to go about that really.</p>



<a name="176942569"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942569" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942569">(Sep 30 2019 at 15:23)</a>:</h4>
<p>a built-in macro you mean, right?</p>



<a name="176942572"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942572" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942572">(Sep 30 2019 at 15:23)</a>:</h4>
<p>no</p>



<a name="176942573"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942573" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942573">(Sep 30 2019 at 15:23)</a>:</h4>
<p>rather than a proc macro per se.</p>



<a name="176942577"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942577" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942577">(Sep 30 2019 at 15:23)</a>:</h4>
<p>hmm</p>



<a name="176942589"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942589" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942589">(Sep 30 2019 at 15:23)</a>:</h4>
<p>they run in separate processes though</p>



<a name="176942596"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942596" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942596">(Sep 30 2019 at 15:23)</a>:</h4>
<p>just a proc macro, and it's the only thing in the body of your function</p>



<a name="176942616"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942616" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942616">(Sep 30 2019 at 15:23)</a>:</h4>
<p>then generate the appropriate body on the fly</p>



<a name="176942624"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942624" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942624">(Sep 30 2019 at 15:23)</a>:</h4>
<p>hmm</p>



<a name="176942685"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942685" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942685">(Sep 30 2019 at 15:24)</a>:</h4>
<p>I have to then feed it to the proc macrothough</p>



<a name="176942691"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942691" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942691">(Sep 30 2019 at 15:24)</a>:</h4>
<p>which is very awkward as I see it</p>



<a name="176942701"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942701" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942701">(Sep 30 2019 at 15:24)</a>:</h4>
<p>built-in macro... maybe</p>



<a name="176942747"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942747" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942747">(Sep 30 2019 at 15:24)</a>:</h4>
<p>the repl could open a tcp server hosting the current body and the proc macro could fetch it</p>



<a name="176942773"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942773" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942773">(Sep 30 2019 at 15:24)</a>:</h4>
<p>this is similar to what I've done in priroda</p>



<a name="176942789"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942789" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942789">(Sep 30 2019 at 15:25)</a>:</h4>
<p>and requires no rustc parser changes</p>



<a name="176942810"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942810" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942810">(Sep 30 2019 at 15:25)</a>:</h4>
<p>oh my.</p>



<a name="176942811"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942811" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942811">(Sep 30 2019 at 15:25)</a>:</h4>
<p>hmm</p>



<a name="176942822"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942822" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942822">(Sep 30 2019 at 15:25)</a>:</h4>
<p>I agree that in some sense it's cleaner...</p>



<a name="176942871"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942871" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942871">(Sep 30 2019 at 15:25)</a>:</h4>
<p>Anything we put into the compiler that isn't used in the compiler is always very endangered of breaking</p>



<a name="176942927"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942927" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942927">(Sep 30 2019 at 15:26)</a>:</h4>
<p>(or getting removed because someone notices dead code)</p>



<a name="176942953"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942953" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942953">(Sep 30 2019 at 15:26)</a>:</h4>
<p>but a) a built-in macro would be far cleaner, b) we may be taking a performance hit for that?, c) support for an interpreter is belongs <em>somewhat</em> more naturally in the rustc codebase.</p>



<a name="176942957"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942957" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942957">(Sep 30 2019 at 15:26)</a>:</h4>
<p>yeah</p>



<a name="176942969"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942969" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942969">(Sep 30 2019 at 15:26)</a>:</h4>
<p>it's why I've tried to comment things like this</p>



<a name="176942986"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176942986" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176942986">(Sep 30 2019 at 15:26)</a>:</h4>
<p>I'm not sure about C</p>



<a name="176943013"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943013" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943013">(Sep 30 2019 at 15:27)</a>:</h4>
<p>that's mainly the question</p>



<a name="176943018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943018">(Sep 30 2019 at 15:27)</a>:</h4>
<p>you can argue both ways</p>



<a name="176943023"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943023" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943023">(Sep 30 2019 at 15:27)</a>:</h4>
<p>and I can't answer it</p>



<a name="176943100"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943100" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943100">(Sep 30 2019 at 15:27)</a>:</h4>
<p>hmm</p>



<a name="176943250"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943250" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943250">(Sep 30 2019 at 15:28)</a>:</h4>
<p>Basically such changes need to be signed off by the compiler team and it may take some time before any decision is made</p>



<a name="176943271"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943271" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943271">(Sep 30 2019 at 15:29)</a>:</h4>
<p>anyway, you sure about the interp tag going in attrs even though it's used by borrowck diagnostics?</p>



<a name="176943291"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943291" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943291">(Sep 30 2019 at 15:29)</a>:</h4>
<p>okay</p>



<a name="176943332"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943332" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943332">(Sep 30 2019 at 15:29)</a>:</h4>
<p>I've always avoided putting things into the compiler if just clippy or miri need them</p>



<a name="176943355"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943355" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943355">(Sep 30 2019 at 15:30)</a>:</h4>
<p>maybe we should ask Niko about this?</p>



<a name="176943454"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943454" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943454">(Sep 30 2019 at 15:30)</a>:</h4>
<blockquote>
<p>anyway, you sure about the interp tag going in attrs even though it's used by borrowck diagnostics?</p>
</blockquote>
<p>oh you aren't using it in the interpreter, you're modifying rustc diagnostics to know about the interpreter?</p>



<a name="176943472"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943472" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943472">(Sep 30 2019 at 15:30)</a>:</h4>
<p>just so we don't waste time going down one particular route</p>



<a name="176943486"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943486" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943486">(Sep 30 2019 at 15:31)</a>:</h4>
<p>precisely, yes</p>



<a name="176943495"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943495" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943495">(Sep 30 2019 at 15:31)</a>:</h4>
<p>the interpreter <em>sets</em> it based on previous sessions</p>



<a name="176943514"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943514" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943514">(Sep 30 2019 at 15:31)</a>:</h4>
<p>but then doesn't do anything with it (except serialise it)</p>



<a name="176943535"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943535" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943535">(Sep 30 2019 at 15:31)</a>:</h4>
<blockquote>
<p>just so we don't waste time going down one particular route</p>
</blockquote>
<p>you have given the definition of "this needs an RFC" :P</p>



<a name="176943567"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943567" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943567">(Sep 30 2019 at 15:31)</a>:</h4>
<p>well</p>



<a name="176943614"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943614" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943614">(Sep 30 2019 at 15:32)</a>:</h4>
<p>perhaps that one particular part of it</p>



<a name="176943660"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943660" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943660">(Sep 30 2019 at 15:32)</a>:</h4>
<p>preventing huge wastes of time is one reason we have RFCs, because otherwise ppl spend months on a PR, open it and then the design may need rework</p>



<a name="176943666"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943666" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943666">(Sep 30 2019 at 15:32)</a>:</h4>
<p>Centril and others seemed averse to it however (obviously I want to avoid that effort and delay, especially given how much time I've already spent on  it)</p>



<a name="176943693"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943693" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943693">(Sep 30 2019 at 15:32)</a>:</h4>
<p>I mean, this doesn't change the user-facing surface</p>



<a name="176943714"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943714" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943714">(Sep 30 2019 at 15:33)</a>:</h4>
<p>it's all the rustc interface</p>



<a name="176943724"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943724" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943724">(Sep 30 2019 at 15:33)</a>:</h4>
<p>we can make a design compiler team meeting about it</p>



<a name="176943739"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943739" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943739">(Sep 30 2019 at 15:33)</a>:</h4>
<p>yes</p>



<a name="176943777"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943777" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943777">(Sep 30 2019 at 15:33)</a>:</h4>
<p>if we can get by with one of those rather than a full-blown RFC, and be sure to get Niko's (and maybe mw's) input, then that would be much better.</p>



<a name="176943921"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943921" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943921">(Sep 30 2019 at 15:35)</a>:</h4>
<blockquote>
<blockquote>
<p>anyway, you sure about the interp tag going in attrs even though it's used by borrowck diagnostics?</p>
</blockquote>
<p>oh you aren't using it in the interpreter, you're modifying rustc diagnostics to know about the interpreter?</p>
</blockquote>
<p>anyway does that mean you're okay with it as-is, as opposed to moving it into the attributes vec (which is just slightly awkward I think)?</p>



<a name="176943969"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176943969" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176943969">(Sep 30 2019 at 15:35)</a>:</h4>
<p>if we do it in the compiler and need it in the compiler yes, but I'm not sure why you're modifing borrowck diagnostics for a REPL ;)</p>



<a name="176944273"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176944273" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176944273">(Sep 30 2019 at 15:38)</a>:</h4>
<p>it's basically "faking" a move or lack of initialization for a local. the changes are very localised in rustc AFAIR. it was the best/ least intrusive way I could see of accomplishing this whilst having all the code dealing with multiple eval sessions in the REPL. :-)</p>



<a name="176944381"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176944381" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176944381">(Sep 30 2019 at 15:40)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> oh, and <code>interp_mode</code>is used in a few random places. I can't summarise easily, so I recommend you grep the last commit of my personal branch if you're curious.</p>



<a name="176944423"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176944423" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176944423">(Sep 30 2019 at 15:40)</a>:</h4>
<p>fixed the doc comment BTW</p>



<a name="176944500"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176944500" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176944500">(Sep 30 2019 at 15:41)</a>:</h4>
<p>as far as I can tell, the outstanding issue is the one of the parsing placeholder vs. proc macro vs. built-in macro, which shall be discussed at a compiler design meeting? once that is resolved (and implementation changed if need be), we're basically good to merge?</p>



<a name="176944519"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176944519" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176944519">(Sep 30 2019 at 15:41)</a>:</h4>
<blockquote>
<p>it's basically "faking" a move or lack of initialization for a local. the changes are very localised in rustc AFAIR. it was the best/ least intrusive way I could see of accomplishing this whilst having all the code dealing with multiple eval sessions in the REPL. :-)</p>
</blockquote>
<p>oh so it doesn't error if you just type <code>let x;</code> ?</p>



<a name="176944740"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176944740" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176944740">(Sep 30 2019 at 15:43)</a>:</h4>
<p>yeah. well, I want genuinely uninitialised variables to still give compiler errors, but ones initialised in some previous eval  session <em>not</em> to error. similarly, I want ones initialised in a previous session then moved to error about being moved, not either work or fail with "uninitialized" (both of which are confusing).</p>



<a name="176944876"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176944876" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176944876">(Sep 30 2019 at 15:45)</a>:</h4>
<p>Well... the design meeting should figure out whether we're okay with sprinkling REPL stuff into the compiler</p>



<a name="176944886"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176944886" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176944886">(Sep 30 2019 at 15:45)</a>:</h4>
<p>not just the one specific case</p>



<a name="176945057"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945057" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945057">(Sep 30 2019 at 15:47)</a>:</h4>
<p>I agree</p>



<a name="176945069"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945069" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945069">(Sep 30 2019 at 15:47)</a>:</h4>
<p>but hopefully you appreciate that I've already tried to minimise it!</p>



<a name="176945076"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945076" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945076">(Sep 30 2019 at 15:47)</a>:</h4>
<p>and that <em>some</em> stuff will be unavoidable</p>



<a name="176945103"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945103" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945103">(Sep 30 2019 at 15:47)</a>:</h4>
<p>I think you'll agree that the <em>main</em> concrete point of discussion is the above one, in anycase?</p>



<a name="176945387"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945387" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945387">(Sep 30 2019 at 15:50)</a>:</h4>
<p>well, idk, I haven't seen the rest of the changes ^^</p>



<a name="176945402"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945402" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945402">(Sep 30 2019 at 15:50)</a>:</h4>
<p>yeah, I mean for this PR haha</p>



<a name="176945442"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945442" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945442">(Sep 30 2019 at 15:51)</a>:</h4>
<p>well... it's hard to decide, without knowing the design you've come up with</p>



<a name="176945452"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945452" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945452">(Sep 30 2019 at 15:51)</a>:</h4>
<p>that's what I mean, we should discuss your entire design</p>



<a name="176945460"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945460" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945460">(Sep 30 2019 at 15:51)</a>:</h4>
<p>and whether that is how it should happen</p>



<a name="176945462"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945462" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945462">(Sep 30 2019 at 15:51)</a>:</h4>
<p>future ones, you'll see in time... or can look at my personal branch like I said. but it will be good to get the compiler team's policy on this before I factor out new PRs from the above branch</p>



<a name="176945581"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945581" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945581">(Sep 30 2019 at 15:52)</a>:</h4>
<p>it's a similar situtation to <a href="https://internals.rust-lang.org/t/migrating-rustc-interface-queries-to-proper-librustc-queries/10433" target="_blank" title="https://internals.rust-lang.org/t/migrating-rustc-interface-queries-to-proper-librustc-queries/10433">https://internals.rust-lang.org/t/migrating-rustc-interface-queries-to-proper-librustc-queries/10433</a></p>



<a name="176945614"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945614" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945614">(Sep 30 2019 at 15:52)</a>:</h4>
<p>loads of work being done without the reviewers having a picture of the overall design</p>



<a name="176945754"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176945754" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176945754">(Sep 30 2019 at 15:54)</a>:</h4>
<p>think about it this way. What if you had opened a PR with just the query saying you need it later. How should a reviewer decide that that would be ok to merge</p>



<a name="176946005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946005">(Sep 30 2019 at 15:57)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> yeah, well, I realise this isn't ideal... but at least I've made my personal branch of all the changes available, so that reviews can see the big picture if they so wish. hopefully you also appreciate that all this work has been the result of many weeks and countless hours of hacking, including all sorts of experimentation and (partial) reverts. anyway, I agree a compiler design meeting about this is a good idea, so let's leave the PR there until that happens, yeah? (I think we and mark-simulacrum agree it's  a good state now modulo those concerns.) sound fair? :-)</p>



<a name="176946058"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946058" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946058">(Sep 30 2019 at 15:57)</a>:</h4>
<p>code isn't design ;) it's implementation. If you could write up an overview for a design meeting that would be great</p>



<a name="176946149"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946149" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946149">(Sep 30 2019 at 15:58)</a>:</h4>
<p>well, there's either explicit or implicit design that goes into any implementation. mainly implicit in this case!</p>



<a name="176946160"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946160" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946160">(Sep 30 2019 at 15:58)</a>:</h4>
<p>that's totally fine</p>



<a name="176946164"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946164" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946164">(Sep 30 2019 at 15:58)</a>:</h4>
<p>I'll try to write up something yes</p>



<a name="176946173"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946173" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946173">(Sep 30 2019 at 15:58)</a>:</h4>
<p>I mean to exctract the design in hindsight</p>



<a name="176946193"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946193" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946193">(Sep 30 2019 at 15:59)</a>:</h4>
<p>when do you want to schedule this for?</p>



<a name="176946197"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946197" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946197">(Sep 30 2019 at 15:59)</a>:</h4>
<p>which is a totally alright thing to do (most research works this way :P)</p>



<a name="176946208"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946208" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946208">(Sep 30 2019 at 15:59)</a>:</h4>
<p>I can do  a 1/2 page - 1 page summary or something</p>



<a name="176946215"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946215" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946215">(Sep 30 2019 at 15:59)</a>:</h4>
<p>I checked the schedule, and the next three fridays are used</p>



<a name="176946219"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946219" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946219">(Sep 30 2019 at 15:59)</a>:</h4>
<p>yeah, that's my experience too.</p>



<a name="176946226"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946226" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946226">(Sep 30 2019 at 15:59)</a>:</h4>
<p>ouch</p>



<a name="176946230"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946230" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946230">(Sep 30 2019 at 15:59)</a>:</h4>
<p>maybe in 3 weeks gets dropped</p>



<a name="176946234"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946234" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946234">(Sep 30 2019 at 15:59)</a>:</h4>
<p>it's unclear</p>



<a name="176946255"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946255" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946255">(Sep 30 2019 at 15:59)</a>:</h4>
<p>can't do a "special meeting" in a week or two I suppose?</p>



<a name="176946267"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946267" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946267">(Sep 30 2019 at 15:59)</a>:</h4>
<p>I know it might be asking too much ^</p>



<a name="176946271"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946271" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946271">(Sep 30 2019 at 16:00)</a>:</h4>
<p>but if you create an issue with the document in <a href="https://github.com/rust-lang/compiler-team/" target="_blank" title="https://github.com/rust-lang/compiler-team/">https://github.com/rust-lang/compiler-team/</a> with a hack.md connected of your design</p>



<a name="176946324"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946324" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946324">(Sep 30 2019 at 16:00)</a>:</h4>
<p>okay</p>



<a name="176946343"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946343" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946343">(Sep 30 2019 at 16:00)</a>:</h4>
<p>(deleted)</p>



<a name="176946355"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946355" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946355">(Sep 30 2019 at 16:00)</a>:</h4>
<p>is the procedure for this</p>



<a name="176946383"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946383" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946383">(Sep 30 2019 at 16:00)</a>:</h4>
<p>sorry, <a href="https://rust-lang.github.io/compiler-team/procedures/steering-meeting/" target="_blank" title="https://rust-lang.github.io/compiler-team/procedures/steering-meeting/">https://rust-lang.github.io/compiler-team/procedures/steering-meeting/</a></p>



<a name="176946396"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946396" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946396">(Sep 30 2019 at 16:01)</a>:</h4>
<p>okay</p>



<a name="176946408"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946408" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946408">(Sep 30 2019 at 16:01)</a>:</h4>
<p>Also, I can participate in the compiler design meeting perhaps. not as a team member obviously, but to answer questions, which I think would make sense?</p>



<a name="176946419"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946419" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946419">(Sep 30 2019 at 16:01)</a>:</h4>
<p>I'll draft something too though.</p>



<a name="176946454"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946454" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946454">(Sep 30 2019 at 16:01)</a>:</h4>
<p>heh everyone can participate, but in the REPL one, yes, I would very much hope you'd be there</p>



<a name="176946458"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946458" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946458">(Sep 30 2019 at 16:01)</a>:</h4>
<p>otherwise it makes no sense to hold</p>



<a name="176946579"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946579" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946579">(Sep 30 2019 at 16:02)</a>:</h4>
<p>yeah, thought so :-P</p>



<a name="176946605"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946605" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946605">(Sep 30 2019 at 16:03)</a>:</h4>
<p>just trying to be respectful of not intruding on compiler team things</p>



<a name="176946618"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946618" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946618">(Sep 30 2019 at 16:03)</a>:</h4>
<p>but I agree, it makes the meeting hugely more useful</p>



<a name="176946625"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946625" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946625">(Sep 30 2019 at 16:03)</a>:</h4>
<p>anyway...</p>



<a name="176946646"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946646" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946646">(Sep 30 2019 at 16:03)</a>:</h4>
<p>thanks for the review. we'll take things from there I guess.</p>



<a name="176946649"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/176946649" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#176946649">(Sep 30 2019 at 16:03)</a>:</h4>
<p>bye for now.</p>



<a name="177043936"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177043936" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177043936">(Oct 01 2019 at 11:03)</a>:</h4>
<blockquote>
<p>Also, I can participate in the compiler design meeting perhaps. not as a team member obviously, but to answer questions, which I think would make sense?</p>
</blockquote>
<p>Oh yeah, we should make that clearer in the docs for these meetings: I think the intention is absolutely to invite the relevant parties to any particular design meeting. There's no reason I can see to limit participation solely to compiler-team members. (And besides, we invite the broader audience of compiler-team/meeting anyway.)</p>



<a name="177074907"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177074907" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177074907">(Oct 01 2019 at 16:56)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> oops, just noticed now Mark-Simulacrum r+'ed it... oh well, just as well it didn't succeed.</p>



<a name="177728400"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177728400" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177728400">(Oct 09 2019 at 15:58)</a>:</h4>
<p><span class="user-mention" data-user-id="124069">@Alexander Regueiro</span> for perf, I'd recomment benchmarking to figure out where the bottlenecks are</p>



<a name="177728420"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177728420" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177728420">(Oct 09 2019 at 15:58)</a>:</h4>
<p>we have done basically zero perf work on Miri so I expect there to be some low-hanging fruit</p>



<a name="177728433"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177728433" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177728433">(Oct 09 2019 at 15:59)</a>:</h4>
<p>but this will also highly depend on the benchmark you are picking</p>



<a name="177728473"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177728473" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177728473">(Oct 09 2019 at 15:59)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span>  yep, good idea. there are already benchmarks, which is nice. disabling validations is a no-brainer, but I'll have a look...</p>



<a name="177728503"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177728503" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177728503">(Oct 09 2019 at 15:59)</a>:</h4>
<p>any low-hanging fruit that comes to mind immediately, which I should look into?</p>



<a name="177728510"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177728510" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177728510">(Oct 09 2019 at 15:59)</a>:</h4>
<p>and there's a trade-off between code clarify and perf. I'd be worried about making Miri significantly more messy even if that helps perf, because it is already a hard-to-maintain piece of rustc with subtle correctness invariants.</p>



<a name="177728621"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177728621" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177728621">(Oct 09 2019 at 16:00)</a>:</h4>
<blockquote>
<p>any low-hanging fruit that comes to mind immediately, which I should look into?</p>
</blockquote>
<p>your guess is probably as good as mine. I am wondering if all our layout computations are costing us or not -- they are cached but hitting the cache is still non-zero-cost. but really I dont dare making any guesses.</p>



<a name="177728684"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177728684" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177728684">(Oct 09 2019 at 16:01)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span>  <span class="user-mention" data-user-id="116083">@pnkfelix</span>  as for a "design meeting", if it involves the miri engine I'd appreciate being involved, or at least getting the chance to look at the summary of the mtg or so.</p>



<a name="177732261"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177732261" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177732261">(Oct 09 2019 at 16:41)</a>:</h4>
<p>sounds fair</p>



<a name="177732317"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177732317" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177732317">(Oct 09 2019 at 16:42)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> right now my REPL itself is a fork of miri, which I regular rebase on top of... but in the future ideally we can factor out the miri engine.</p>



<a name="177732409"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177732409" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177732409">(Oct 09 2019 at 16:43)</a>:</h4>
<p>the "miri engine" is already factored out, it lives in librustc_mir/interpret in the rustc repo</p>



<a name="177750100"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177750100" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177750100">(Oct 09 2019 at 19:58)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> yeah, so I don't mean the engine then... I mean the stuff in the miri repo (lib part) that can be shared between miri the tool and my repl tool (which is the vast majority)</p>



<a name="177750704"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177750704" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177750704">(Oct 09 2019 at 20:04)</a>:</h4>
<p>basically just one or two new intrinsics I think</p>



<a name="177750709"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177750709" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177750709">(Oct 09 2019 at 20:04)</a>:</h4>
<p>is the difference</p>



<a name="177750733"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177750733" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177750733">(Oct 09 2019 at 20:05)</a>:</h4>
<p>maybe that can go into miri itself. if there are other diffs, they're small!</p>



<a name="177750900"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177750900" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177750900">(Oct 09 2019 at 20:07)</a>:</h4>
<p>I see. yeah we don't guarantee stability for that but other than that, makes sense ;)</p>



<a name="177753227"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177753227" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177753227">(Oct 09 2019 at 20:30)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> yeah, maybe could have a toolstate sort of situation though. I can see it working. I've tried to expand on top of miri as much as possible, rather than modifying it... so yeah, the main things are a different machine implementation (necessary I think) and the intrinsics. should be workable, but nothing to concern ourselves with quite yet. :-)</p>



<a name="177788741"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177788741" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177788741">(Oct 10 2019 at 08:19)</a>:</h4>
<p>given that Miri does not change remotely as fast as rustc does, it might be enough for you to just have a cronjob that regularly tests against Miri master</p>



<a name="177791529"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177791529" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177791529">(Oct 10 2019 at 09:03)</a>:</h4>
<p>That's how priroda works, too</p>



<a name="177999666"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/177999666" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#177999666">(Oct 12 2019 at 17:59)</a>:</h4>
<p>sounds reasonable yeah</p>



<a name="178001118"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001118" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001118">(Oct 12 2019 at 18:36)</a>:</h4>
<p><span class="user-mention" data-user-id="124069">@Alexander Regueiro</span> I just learned that rustc gained a lot of speed on some benchmarks by avoiding <code>layout_of</code> in a hot code path. That confirms the suspicion I raised above that right now, having the layout of everything everywhere is our biggest bottleneck.</p>



<a name="178001128"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001128" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001128">(Oct 12 2019 at 18:36)</a>:</h4>
<p>however, adding that layout everywhere also helped to uncover and fix tons of bugs</p>



<a name="178001134"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001134" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001134">(Oct 12 2019 at 18:37)</a>:</h4>
<p>so when optimizing this we have to be careful to not make our API more fragile</p>



<a name="178001145"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001145" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001145">(Oct 12 2019 at 18:37)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> Cool. Thanks for letting me know. I'll see if I can at the very least cache it, if not avoid calls to it.</p>



<a name="178001149"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001149" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001149">(Oct 12 2019 at 18:37)</a>:</h4>
<p>Maybe with a cfg option.</p>



<a name="178001150"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001150" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001150">(Oct 12 2019 at 18:37)</a>:</h4>
<p>it is cached</p>



<a name="178001151"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001151" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001151">(Oct 12 2019 at 18:37)</a>:</h4>
<p>ah</p>



<a name="178001154"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001154" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001154">(Oct 12 2019 at 18:37)</a>:</h4>
<p>the rustc query mechanism caches it for us</p>



<a name="178001163"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001163" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001163">(Oct 12 2019 at 18:37)</a>:</h4>
<p>but it's still a hashtable lookup and some more stuff even for a cache hit, which in hot loops is a <em>lot</em></p>



<a name="178001230"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001230" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001230">(Oct 12 2019 at 18:38)</a>:</h4>
<p>so you'll still need to profile</p>



<a name="178001235"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001235" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001235">(Oct 12 2019 at 18:38)</a>:</h4>
<p>but this would be the first thing I'd look for in a profile ;)</p>



<a name="178001252"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001252" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001252">(Oct 12 2019 at 18:39)</a>:</h4>
<p>aha</p>



<a name="178001254"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001254" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001254">(Oct 12 2019 at 18:39)</a>:</h4>
<p>yeah</p>



<a name="178001257"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001257" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001257">(Oct 12 2019 at 18:39)</a>:</h4>
<p>I will profile, for sure</p>



<a name="178001259"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/miri%20performance/near/178001259" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/miri.20performance.html#178001259">(Oct 12 2019 at 18:39)</a>:</h4>
<p>ta</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>